/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controle;

import java.util.ArrayList;
import java.util.Iterator;

/**
 *
 * @author Vinícius
 */
public class MercadoriaDAO implements OperacoesDAO {

    private ArrayList<Mercadoria> mercadoria = new ArrayList();

    public void inserir(Object obj) {
        if (obj instanceof Mercadoria) {
            Mercadoria d = (Mercadoria) obj;
            mercadoria.add(d);
        }

    }
    
     private MercadoriaDAO() {
        if (mercadoria.isEmpty()) {
            Object obj = GerenciadorArquivos.lerDados("Mercadoria.txt");
            if (obj instanceof ArrayList) {
                mercadoria = (ArrayList) obj;
            }
        }
    }

      @Override
    public boolean excluir(Object obj) {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

    @Override
    public void editar(Object obj) {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }
    
    
    public ArrayList pequisar() {
        return mercadoria;
    }

    /*
     * @param obj é o critério de pesquisa (titulo) que tem que ser do tipo String
     * @return uma coleção de todos os discos encontrados
     */
    public ArrayList pesquisar(Object obj) {
        ArrayList<Mercadoria> retorno = new ArrayList();
        if (obj instanceof String) {
            Integer chave = (Integer) obj;
            Iterator<Mercadoria> it = mercadoria.iterator();
            while (it.hasNext()) {
                Mercadoria d = it.next();
                if (chave == d.getCodigo()) {
                    retorno.add(d);
                }
            }
        }
        return retorno;
    }

  
}
